package com.chixing.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author smith
 * @since 2025-09-17
 */
public class Candidate implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "candidate_id", type = IdType.AUTO)
    private Integer candidateId;

    private String candidateName;

    private String candidatePassword;

    private String candidateEmail;

    private String candidatePhone;

    private String candidateGender;

    private LocalDate candidateBirthDate;

    private String candidateCity;

    private String candidateEducationLevel;

    private Integer candidateWorkExperience;

    private String candidateResume;

    private String candidateStatus;

    private LocalDateTime createdAt;

    private LocalDateTime updatedAt;

    public Integer getCandidateId() {
        return candidateId;
    }

    public void setCandidateId(Integer candidateId) {
        this.candidateId = candidateId;
    }
    public String getCandidateName() {
        return candidateName;
    }

    public void setCandidateName(String candidateName) {
        this.candidateName = candidateName;
    }
    public String getCandidatePassword() {
        return candidatePassword;
    }

    public void setCandidatePassword(String candidatePassword) {
        this.candidatePassword = candidatePassword;
    }
    public String getCandidateEmail() {
        return candidateEmail;
    }

    public void setCandidateEmail(String candidateEmail) {
        this.candidateEmail = candidateEmail;
    }
    public String getCandidatePhone() {
        return candidatePhone;
    }

    public void setCandidatePhone(String candidatePhone) {
        this.candidatePhone = candidatePhone;
    }
    public String getCandidateGender() {
        return candidateGender;
    }

    public void setCandidateGender(String candidateGender) {
        this.candidateGender = candidateGender;
    }
    public LocalDate getCandidateBirthDate() {
        return candidateBirthDate;
    }

    public void setCandidateBirthDate(LocalDate candidateBirthDate) {
        this.candidateBirthDate = candidateBirthDate;
    }
    public String getCandidateCity() {
        return candidateCity;
    }

    public void setCandidateCity(String candidateCity) {
        this.candidateCity = candidateCity;
    }
    public String getCandidateEducationLevel() {
        return candidateEducationLevel;
    }

    public void setCandidateEducationLevel(String candidateEducationLevel) {
        this.candidateEducationLevel = candidateEducationLevel;
    }
    public Integer getCandidateWorkExperience() {
        return candidateWorkExperience;
    }

    public void setCandidateWorkExperience(Integer candidateWorkExperience) {
        this.candidateWorkExperience = candidateWorkExperience;
    }
    public String getCandidateResume() {
        return candidateResume;
    }

    public void setCandidateResume(String candidateResume) {
        this.candidateResume = candidateResume;
    }
    public String getCandidateStatus() {
        return candidateStatus;
    }

    public void setCandidateStatus(String candidateStatus) {
        this.candidateStatus = candidateStatus;
    }
    public LocalDateTime getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(LocalDateTime createdAt) {
        this.createdAt = createdAt;
    }
    public LocalDateTime getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(LocalDateTime updatedAt) {
        this.updatedAt = updatedAt;
    }

    @Override
    public String toString() {
        return "Candidate{" +
            "candidateId=" + candidateId +
            ", candidateName=" + candidateName +
            ", candidatePassword=" + candidatePassword +
            ", candidateEmail=" + candidateEmail +
            ", candidatePhone=" + candidatePhone +
            ", candidateGender=" + candidateGender +
            ", candidateBirthDate=" + candidateBirthDate +
            ", candidateCity=" + candidateCity +
            ", candidateEducationLevel=" + candidateEducationLevel +
            ", candidateWorkExperience=" + candidateWorkExperience +
            ", candidateResume=" + candidateResume +
            ", candidateStatus=" + candidateStatus +
            ", createdAt=" + createdAt +
            ", updatedAt=" + updatedAt +
        "}";
    }
}
